package ar.edu.siglo21.taller.algoritmo.controlador;

import java.util.ArrayList;
import java.util.List;

import ar.edu.siglo21.taller.algoritmo.exception.MyException;
import ar.edu.siglo21.taller.algoritmo.model.Alumno;
import ar.edu.siglo21.taller.algoritmo.model.Materia;

public class ControladorAlumno {

	private List<Alumno> listaAlumnos;

	public ControladorAlumno() {
		listaAlumnos = new ArrayList<Alumno>();
	}

	public void crearAlumno(String apellido, String nombre, int dni,
			String legajo) throws MyException {
		Alumno alumno = new Alumno(apellido, nombre, dni, legajo);
		listaAlumnos.add(alumno);
		System.out.println("Se ha creado el alumno con exito \n");
	}

	public List<Alumno> getListAlumnos() {
		return listaAlumnos;
	}

	public void setListAlumnos(List<Alumno> listAlumnos) {
		this.listaAlumnos = listAlumnos;
	}

	public Alumno buscarAlumnoPorDni(int dni) throws MyException {
		Alumno alumnoEncontrado = null;
		for (Alumno alumno : listaAlumnos) {
			if (dni == alumno.getDni()) {
				alumnoEncontrado = new Alumno();
				alumnoEncontrado.setApellido(alumno.getApellido());
				alumnoEncontrado.setNombre(alumno.getNombre());
				alumnoEncontrado.setDni(alumno.getDni());
				alumnoEncontrado.setLegajo(alumno.getLegajo());
				alumnoEncontrado.setLstMaterias(alumno.getLstMaterias());
			} else {
				throw new MyException("El alumno con DNI: " + dni
						+ " no existe");
			}

		}
		return alumnoEncontrado;
	}

	public void listarAlumnos() {
		for (Alumno alumno : listaAlumnos) {
			System.out.println(alumno.toString());
		}
	}

}
